package root.electronclass.electronclass.mvp.entity

import android.os.Parcelable
import kotlinx.android.parcel.Parcelize

/**
 *
 *
 * 学生和班级德育加减分记录
 *
 *
 * //author fq
 * //since 2022-10-12
 */
//Data
//Accessors(chain = true)
//ApiModel(value="MoralScoreRecord对象", description="学生和班级德育加减分记录")
@Parcelize
data class MoralScoreRecord(
    //TableId(value = "id", type = IdType.AUTO)
    var id: Long? = null,

    //TableField("score_id")
    var scoreId: Long? = null,

    //TableField("depart_id")
    var departId: Long? = null,

    //TableField("student_id")
    var studentId: Long? = null,

    //TableField("name")
    var name: String? = null,

    //ApiModelProperty(value = "1是加分 2是减分")
    //TableField("mark")
    var mark: Int = 0,

    //TableField("rule_id")
    var ruleId: Long = 0,

    //TableField("rule_name")
    var ruleName: String? = null,

    //ApiModelProperty(value = "程度")
    //TableField("level_name")
    var levelName: String? = null,

    //ApiModelProperty(value = "德育分")
    //TableField("score")
    var score: Int = 0,

    //ApiModelProperty(value = "创建者userid")
    //TableField("creator")
    var creator: String? = null,

    //ApiModelProperty(value = "打分人姓名")
    //TableField("creator_name")
    var creatorName: String? = null,

    //ApiModelProperty(value = "1是学生德育 2是班级德育 3是借分 4是学生竞赛打分 5是班级竞赛打分 6是宿舍竞赛打分 7-劳动实践 8-考试成绩 9-积分兑换")
    //TableField("type")
    var type: Int = 0,

    //ApiModelProperty(value = "现场图片")
    //TableField("picture_url")
    var pictureUrl: String? = null,

    //ApiModelProperty(value = "视频地址")
    //TableField("video")
    var video: String? = null,

    //ApiModelProperty(value = "备注")
    //TableField("remark")
    var remark: String? = null,

    //ApiModelProperty(value = "竞赛id")
    //TableField("competition_id")
    var competitionId: Long? = null,

    //TableField("school_id")
    var schoolId: Long? = null,

    //TableField("modify_time")
    var modifyTime: String? = null,

    //ApiModelProperty(value = "0是未删除 1是删除")
    //TableField("del_flag")
    var delFlag: Int = 0,

    //ApiModelProperty(value = "外部订单号")
    //TableField("out_trade_no")
    var outTradeNo: String? = null,

    //ApiModelProperty(value = "创建时间")
    //TableField("create_time")
    var createTime: String? = null,

    //ApiModelProperty(value = "德育分类 1学生德育即班级德育  2学生德育区分班级德育")
    //TableField("config_type")
    var configType: Int = 0,

    //TableField(exist = false)
    var dayNum: Int = 0,

    //TableField(exist = false)
    var weekNum: Int = 0,

    //TableField(exist = false)
    //ApiModelProperty(value = "1是学校统一规定 2是班级规定")
    var ruleType: Int = 0,

    //TableField(exist = false)
    //ApiModelProperty(value = "详细")
    var detail: String? = null,

    //TableField(exist = false)
    //ApiModelProperty(value = "程度")
    var level: String? = null,

    //TableField(exist = false)
    //ApiModelProperty(value = "德育项")
    var item: String? = null,

    //TableField(exist = false)
    var startTime: String? = null,

    //TableField(exist = false)
    var endTime: String? = null,

    //ApiModelProperty(value = "后台班级集合")
    //TableField(exist = false)
    var classList: List<Int>? = null,

    //TableField(exist = false)
    //ApiModelProperty(value = "德育项名称")
    var ruleItem: String? = null,

    var dateInit: String? = null,

    var videoFormat: List<PicDto>? = null,
    var pictureUrlFormat: List<PicDto>? = null,


    var studentScores: Double = 0.0, //当前德育分
    var listClass: Int = 0,  //班级排名
    var listGrade: Int = 0, //年级排名
    var listSchool: Int = 0, //学校排名


    //TableField(exist = false)
    var genderId: Long? = null,
    var pageNum: Int = 0,
    var pageSize: Int = 20


) : Parcelable
